int getDecimalValue(struct ListNode* head) {
	int ret = 0;
	struct ListNode* cur = head;
	while (cur) {
		ret = (ret << 1) + cur->val;
		cur = cur->next;
	}
	return ret;
}